package org.lestr.secuel.m3ds.objets3D;

import java.util.Collection;

import org.lestr.secuel.m3ds.maths.IPoint3d;
import org.lestr.secuel.m3ds.maths.IPoint2d;


public interface EcouteurTexture {
	
	
	/** Un matériau a changé ou a été ajouté */
	public void matériauChangé(IApparence texture, ITriangle triangle, Materiau ancienMatériau);

	
	/** La position de la texture a changé */
	public void textureDéplacée(IApparence texture, double deltaX, double deltaY);

	
	/** La dimension de la texture a changé */
	public void textureDimensionnée(IApparence texture, double deltaDimensionX, double deltaDimensionY);
	
	
	/** Les coordonnées de texture ont changées */
	public void coordonnéesChangées(IApparence texture, Collection<IPoint2d> anciennesCoordonnées);
	
	
	/** L'auto-texturage a changé */
	public void autoTexturageChangé(IApparence texture);
	
	
	/** Les normales aux triangles ont changées */
	public void normalesChangées(IApparence texture, Collection<IPoint3d> anciennesNormales);
	
	
	/** L'auto-calcul des normales aux triangles a changé */
	public void autoNormalesChangé(IApparence texture);
	
	
}// FIN EcouteurTexture
